Ubuntu 18.04/20.04/22.04 使用教程 您所在的位置:网站首页 ubuntu20 美化 Ubuntu 18.04/20.04/22.04 使用教程

Ubuntu 18.04/20.04/22.04 使用教程

#Ubuntu 18.04/20.04/22.04 使用教程| 来源: 网络整理| 查看: 265

本文统一整理 Ubuntu 18.04, 20.04 和 22.04 的系统安装和设置方法. 其中三代系统有差别的设置会通过标签分别介绍, 如下所示, 请读者务必注意.

18.04 (bionic): Ubuntu 18.04 20.04 (focal): Ubuntu 20.0422.04 (jammy): Ubuntu 22.04

A. 查看系统信息查看 cpu 信息# CPU型号 cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c # 物理 CPU 个数 cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l # CPU核数 (物理CPU个数 * 每个CPU的核数) cat /proc/cpuinfo| grep "cpu cores"| uniq # 逻辑CPU个数 (物理CPU个数 * 每个CPU的核数 * 超线程数) cat /proc/cpuinfo| grep "processor"| wc -l查看操作系统信息# 查看操作系统内核信息 uname -a # 查看操作系统发行版本 cat /etc/issue lsb_release -a # 查看hostname hostname # 网卡信息 ip a安装的字体# 所有字体 fc-list # 中文字体 fc-list :lang=zhB. 安装 Ubuntu下载安装镜像, 可以选择桌面版或服务器版安装方法一: Rufus: 写入 U盘 GPT 分区类型, 用于 UEFI 模式启动安装方法二: 优启通: 硬盘分区类型: DiskGenius 变为 GPT 类型最后记得把EFI分区所在的硬盘作为第一启动硬盘 (Hard Drive BBS Priorities)

注意. 启动时报错: Failed to open \EFI\BOOT\mmx64.efi: Not Found.

解决方案: 在安装介质中把 ./EFI/grubx64.efi 重命名为 ./EFI/mmx64.efi 即可.

我们创建两个挂载点 /boot 和 /.

分区类型挂载点分区大小ext4/boot2Gext4/剩余所有的

注意. 双系统报错: 原来装了 win + ubuntu 双系统, 由 ubuntu 引导. 然后在 win 下直接删了 ubuntu 的分区, 导致开机无法启动, 进入了 grub 命令行.

解决方案: 使用优启通制作一个U盘启动盘, 进入Win PE系统, 使用引导修复工具修复 win 系统的引导, 之后就能正常回到 win 的引导界面并能正常开机了.

0 配置下载源

使用 vim 编辑 /etc/apt/sources.list 文件, 注释掉原来所有的内容, 新增以下源 (不同的源选一个即可, 但注意版本 18.04/20.04/22.04 必须选对):

浙大源

18.04 (bionic):deb https://mirrors.zju.edu.cn/ubuntu/ bionic main restricted universe multiverse deb https://mirrors.zju.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse deb https://mirrors.zju.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse deb https://mirrors.zju.edu.cn/ubuntu/ bionic-security main restricted universe multiverse20.04 (focal)deb https://mirrors.zju.edu.cn/ubuntu/ focal main restricted universe multiverse deb https://mirrors.zju.edu.cn/ubuntu/ focal-updates main restricted universe multiverse deb https://mirrors.zju.edu.cn/ubuntu/ focal-backports main restricted universe multiverse deb https://mirrors.zju.edu.cn/ubuntu/ focal-security main restricted universe multiverse22.04 (jammy)deb https://mirrors.zju.edu.cn/ubuntu/ jammy main restricted universe multiverse deb https://mirrors.zju.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse deb https://mirrors.zju.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse deb https://mirrors.zju.edu.cn/ubuntu/ jammy-security main restricted universe multiverse

阿里云源

18.04 (bionic)deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse20.04 (focal)deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse22.04 (jammy)deb http://mirrors.aliyun.com/ubuntu/ jammy main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ jammy-updates main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ jammy-security main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ jammy-backports main restricted universe multiverse1 网络设置1.1 联网

如果使用 Ubuntu Desktop, 那么联网可以通过 GUI 的方式填写 IP 等信息. 此处略去不表.

如果使用 Ubuntu Server, 那么有两种网络管理工具, netplan 和 NetworkManager. 二者我们需要选择其一.

如果通过动态 IP 联网, 则什么也不需要配置 如果只配置静态 IP , 则使用 netplan 或者 NetworkManager 均可, 推荐前者. 如果需要配置 L2TP VPN, 则必须选择 NetworkManager 还可以使用安卓手机的网络共享功能临时上网. 安卓手机通过数据线连接到 Ubuntu 服务器, 手机移动网络设置中开启 usb 网络共享, 电脑共享手机网络 1.1.1 使用 netplan 联网

如果有固定 IP, 则使用 netplan 来配置. 编辑 /etc/netplan/*.yaml 文件, 写入以下内容:

# This is the network config written by 'subiquity' network: ethernets: eno1: # 网卡名称, 需要填写自己机器的, 通过 `ip a` 命令查看, addresses: [192.168.1.2/24] # 静态 IP 地址, 斜杠后面的是子网掩码, 24 表示 24 个 1, 即 255.255.255.0 gateway4: 192.168.1.1 # 网关地址, 在 22.04 版本中不再需要这一行, 只需要指定下面的路由网关地址即可 nameservers: addresses: [8.8.8.8] # DNS 服务器地址 routes: - to: 0.0.0.0/0 # 路由目标地址 via: 192.168.1.1 # 路由网关地址 metric: 0 renderer: networkd # 网络服务, networkd 和 NetworkManager 二选一, 使用 netplan 时需要指定为 networkd version: 2

注意: 我们编辑的文件 /etc/netplan/*.yaml, 在不同来源的系统中可能有不同的文件名.

使用以下命令应用配置:

# 检查配置的正确性 sudo netplan try # 应用配置 sudo netplan apply1.1.2 使用 NetworkManager 联网

NetworkManager (简称 NM) 是另一种网络管理工具, 它支持更复杂的配置, 特别是 L2TP VPN. 我们首先介绍配置静态 IP 的方法. 使用 NM 之前, 我们修改 /etc/netplan/*.yaml 文件使用 NM 管理网络:

# This is the network config written by 'subiquity' network: renderer: NetworkManager version: 2

然后编辑 /etc/NetworkManager/NetworkManager.conf, 修改为 managed=true:

[main] plugins=ifupdown,keyfile [ifupdown] managed=true [device] wifi.scan-rand-mac-address=no

配置修改后我们需要重启网络服务

sudo systemctl restart NetworkManager

NetworkManager 使用命令行工具 nmcli 来管理配置. 有关 nmcli 的使用方法, 可以参考 nmcli --help 查看.

接下来通过创建配置文

sudo nmcli c add type ethernet con-name wired ifname eno1 ipv4.addr 192.168.1.2/24 ipv4.gateway 192.168.1.1 ipv4.method manual

其中 wired 为自定义的连接名称, eno1 为网卡名称 (需要填写自己的). 注意修改自己的 IP 地址, 子网掩码和网关. 然后就会有个新的文件 /etc/NetworkManager/system-connections/wired.nmconnection 创建出来. 接下来我们编辑该文件, 并使得最终内容如下 (注意 uuid 值使用原本的就可以):

[connection] id=wired uuid=5de8cdc3-0595-4739-bf43-24f4ec666976 # 使用原来创建的默认值即可 type=ethernet # 有线网 autoconnect-priority=-998 interface-name=eno1 # 网卡名称 permissions= timestamp=1644651104 [ethernet] mac-address-blacklist= [ipv4] address1=192.168.1.2/24,192.168.1.1 # IP 地址, 子网掩码和网关 dns=8.8.8.8; # DNS 服务器地址 dns-search= ignore-auto-dns=true method=manual [ipv6] addr-gen-mode=stable-privacy dns-search= method=auto [proxy]

完成后启动该配置:

sudo nmcli connection up wired # 可以使用缩写 c 代表 connection, nmcli --help 见详细用法 sudo nmcli c up wired # 查看当前的配置 nmcli c1.2 L2TP VPN 连接 (校园网连外网)

在浙大内网的话, 按 1.1 联网 的方法配置好 IP, 使用浙大源就可以直接通过 apt 从校园网直接安装软件了.

但此时还没有外网, 还需要配置 L2TP VPN 才能连接外网. 我们使用 NetworkManager 提供的 L2TP 模块. 首先安装该模块:

# ubuntu server/desktop 需要安装 sudo apt install network-manager-l2tp # ubuntu desktop 需要安装 sudo apt install network-manager-l2tp-gnome

使用 Ubuntu Desktop:

新建 L2TP VPN

Name: ZJUVPNGateway: User name: Password: PPP Settings: 勾选 Allow BSD data compression勾选 Allow Deflate data compression取消勾选 Use TCP header compression取消勾选 User protocol field compression negotiation取消勾选 Use Address/Control compression

使用 Ubuntu Server:

需要在终端中配置 VPN. 使用以下命令新建一个连接

sudo nmcli c add connection.id ZJUVPN type vpn vpn-type l2tp

其中 ZJUVPN 为自定义 VPN 名称. 然后编辑文件 /etc/NetworkManager/system-connections/ZJUVPN.nmconnection,

[connection] id=ZJUVPN uuid=1fe18117-cbca-4f3e-9f3d-80664859b2f2 # 使用原来创建的默认值即可 type=vpn # 连接类型为 vpn autoconnect=false permissions= timestamp=1593424178 [vpn] gateway= # VPN 地址 mru=1400 mtu=1400 no-vj-comp=yes noaccomp=yes nopcomp=yes password-flags=0 # 这里设置为 0, 这样密码可以写在配置文件里, 方便自动连接 user= # 用户名 service-type=org.freedesktop.NetworkManager.l2tp [vpn-secrets] password= # 密码 [ipv4] dns-search= method=auto [ipv6] addr-gen-mode=stable-privacy dns-search= method=auto [proxy]

启动 VPN 服务

sudo nmcli c up ZJUVPN # 查看 nmcli c

我们希望开机后可以自动连接 VPN

使用 Ubuntu Desktop:

运行 nm-connection-editor 打开网络连接编辑面板从 Ethernet(以太网) 列表中选择所使用的有线网或者从WLAN列表中选择所使用的无线网, 双击打开编辑面板 在 General(常规) 选项卡中勾选 Automatically connect to VPN when using this connection(使用此连接时自动连接到VPN), 并选择要开启的 VPN

使用 Ubuntu Server:

编辑 /etc/NetworkManager/system-connections/wired.nmconnection 文件, 在下面的段落中增加一行 ZJUVPN 的 uuid 号:

[connection] id=wired uuid=5de8cdc3-0595-4739-bf43-24f4ec666976 type=ethernet autoconnect-priority=-998 interface-name=eno1 permissions= secondaries=1fe18117-cbca-4f3e-9f3d-80664859b2f2 # 这里填入 ZJUVPN 的 uuid 号即可. timestamp=1644651104

重启系统测试效果. (亲测可行)

1.3 双网卡设置主节点: 一张网卡设置为外网ip, 另一张设置为内网ip. 内网网卡不设置网关.network: ethernets: eno1: addresses: [10.1.0.2/21] # 此处为示例, 请填写实际的外网(城域网) IP 地址和子网掩码 gateway4: 10.1.0.1 # 此处为示例, 请填写实际的 IPv4 网关 nameservers: addresses: [10.1.0.1] # 此处为示例, 请填写实际的 DNS 服务器地址 routes: - to: 10.0.0.0/8 via: 10.1.0.1 # 此处为示例, 请填写实际的 IPv4 网关 metric: 0 eno2: addresses: [192.168.0.1/24] # 此处为示例, 请填写实际的内网 IP 地址和子网掩码 version: 2设置内网的节点可以通过主节点访问外网: 开启ip_forward的内核转发, 重启后有效.vim /etc/sysctl.conf

其中找到 net.ipv4.ip_forward , 赋值为 1.

设置路由表Destination Gateway Genmask Flags Metric Ref Use Iface default _gateway 0.0.0.0 UG 0 0 0 eno1 10.0.0.0 10.1.0.1 255.0.0.0 UG 0 0 0 eno1 10.1.0.0 0.0.0.0 255.255.248.0 U 0 0 0 eno1 192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eno2

由于内网的请求源地址是内网地址, 目标地址是外网地址, 请求返回时外网地址不知道内网地址, 因此需要做网络地址转换(network address translation, NAT), 把内网地址修改为外网知道的网关地址. 数据包返回后目标地址是网关, 需要进一步转换为内网地址. 因此需要在 iptables 中添加 NAT 转发规则.

添加 iptables 的NAT转发规则iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eno1 -j MASQUERADE

该规则的意思是所有 来自 192.168.0.0/24 IP 段经由 eno1 发出的数据包需要做 NAT 转换, 把源地址替换为出口网卡 eno1 的 IP 地址:

-t nat: 指定 nat表-A POSTROUTING: 新增一条规则,到规则链列表 POSTROUTING 的最后一行-s 192.168.0.0/24: 源 IP 地址-o eno1: 数据包从网卡 eno1输出-j MASQUERADE: 处理数据包的动作, MASQUERADE 是地址伪装, 指自动把源 IP 地址替换为网卡的 IP 地址2 安装常用工具更新系统, 安装常用工具sudo apt update sudo apt upgrade sudo apt install vim, git, curl, tmux, mlocate, net-tools3 修改默认的中文文件夹为英文

方法一:打开 系统设置-》语言支持 将“english”拖动到最上端,重启系统。重启后,会提示更新文件名称,更新后在将语言”中文“拖动到顶部,重启系统 。

方法二:

编辑 ~/.config/user-dirs.dirs 文件

XDG_DESKTOP_DIR="$HOME/Desktop" XDG_DOWNLOAD_DIR="$HOME/Download" XDG_TEMPLATES_DIR="$HOME/Templates" XDG_PUBLICSHARE_DIR="$HOME/Public" XDG_DOCUMENTS_DIR="$HOME/Documents" XDG_MUSIC_DIR="$HOME/Music" XDG_PICTURES_DIR="$HOME/Pictures" XDG_VIDEOS_DIR="$HOME/Videos"

方法三:打开终端,在终端中输入命令:

export LANG=en_US xdg-user-dirs-gtk-update

跳出对话框询问是否将目录转化为英文路径,同意并关闭。在终端中输入命令:

export LANG=zh_CN

重新启动系统,系统会提示更新文件名称,选择不再提示,并取消修改。

4 Ubuntu 美化 (仅用于 Desktop 版, 可选)

参考文章 https://www.cnblogs.com/feipeng8848/p/8970556.html. 这里摘录一些.

美化工作主要围绕两个主题展开: 修改 Gnome 皮肤: https://www.pling.com/s/Gnome 安装 Gnome 插件: https://extensions.gnome.org/

这里的 Gnome 是一个 Linux 下的桌面环境, Ubuntu 18.04 使用的是 v3.28; Ubuntu 20.04 使用的是 v3.36.

4.1 安装 gnome-tweak-tool 和插件sudo apt update sudo apt install gnome-tweak-tool

安装完成后, 按 Win 键, 输入 tweak 搜索到 Tweaks 工具 (可以右键添加到收藏, 即固定到任务栏), 打开.

此处 Tweaks 在 18.04 和 20.04 版本中略有不同, 但基本功能类似, 主要是用于调整任务栏和系统皮肤等等的属性, 读者可以自行探索. 我们重点推荐几个拓展(Extensions)

Tweaks 的拓展是通过浏览器插件来安装的. 首先安装拓展工具:

sudo apt-get install gnome-shell-extensions

安装完成后打开 Tweaks 的 Extensions 菜单, 可以看到已有的插件.

现在我们要安装新的插件, 打开 Gnome 插件网址 https://extensions.gnome.org/, 搜索如下几个插件:

User Themes: 用于修改系统皮肤Dash to Panel: 用于修改任务栏样式Topicon plus: 用于 wine, 后面再说

安装插件的方法很简单, 只需要打开每个插件页面的开关, 稍等片刻, 会弹出一个对话框, 点击 Install 即可. 安装完插件后在 Tweaks 的 Extensions 菜单可以看到.

4.2 安装新皮肤

Ubuntu 的皮肤包含两部分, 主题和图标. 系统已有的主题存放在 /usr/share/themes, 图标存放在 /usr/share/icons 中. 我们要做的就是下载新的主题和皮肤, 把他们放入这两个系统文件夹.

首先打开 Gnome 皮肤网站 https://www.pling.com/s/Gnome, 点击左侧的 GTK 3/4 Themes 分类, 点击 Rating 标签, 选择一款自己喜欢的皮肤, 比如这款 Orchis. 点击 Files 标签, 可以看到有多种样式可以选择: 普通样式, 带 dark 后缀的暗黑风, 带 light 后缀的明亮风. 任意选择一个, 点击下载按钮, 稍等片刻就会下载一个压缩包 Orchis-light.tar.xz.

# 解压 tar xvf Orchis-light.tar.xz # 移动到主题文件夹 sudo mv Orchis-light /usr/share/themes

再打开 Gnome 皮肤网站, 点击左侧的 Full Icon Themes 分类, 点击 Score 标签, 选择一款自己喜欢的图标, 比如这款 McMojave-circle, 任意选择一个图标样式下载.

# 解压 tar xvf 01-McMojave-circle.tar.xz # 移动到图标文件夹 sudo mv McMojave-circle /usr/share/icons

在 Tweaks 的 Apperence 菜单, 我们可以看到 Themes 下面有一系列的皮肤选项, 其中 Applications 和 Shell 下就包括我们新增加的 Orchis-light 皮肤, 在 Icons 菜单包含新增的 McMojave-circle 图标, 可以自行选择.

4.3 开启夜灯 (护眼模式)18.04 (bionic): 在 GNOME Shell Extensions 市场中, 搜索 night light slider . 点击开关安装(注意点了开关后可能(后台)下载超级慢, 我的大概过了十几分钟才有反应. 他下载好安装的时候会弹出一个框, 所以点完了等着就行了, 可以做别的事情.) 20.04 (focal): 在系统设置的显示器选项中, 开启夜灯即可.4.4 自定义锁屏/登录背景 (GDM)从这里下载皮肤, 选择适合自己的系统, 如 "18.04 with asking password"解压后, 阅读 readme, 然后按步骤先安装

安装之前, 先自己备份一下 ubuntu.css :

bash sudo cp /usr/share/gnome-shell/theme/ubuntu.css /usr/share/gnome-shell/theme/ubuntu.css.backup

接下来开始安装:

执行 ./install.sh 寻找一个自己的喜欢的壁纸, 右键 -> script -> SetAsWallPaper (要输入密码), 这样, 程序 ~/.local/share/nautilus/scripts/SetAsWallpaper 就会生成一张当前壁纸模糊后的版本放到 /usr/share/backgrounds/gdmlock.jpg , 可以自己检查一下是否正确. 重启电脑完成如果登录框的文字被遮挡了, 可以按照 readme 中的说明修改.双屏的时候, 登录界面的背景图可能大小不正常, 此时使用 gnome-shell-extension 中的 Lock screen background 插件来修正, 开关在这里. 开关开启后(可能非常慢, 十几分钟), 从 Extension 中开启选项 Open Unlock Dialog Background 即可.4.5 自定义 Grub 主题从这里下载皮肤解压后运行 ./install.sh 安装C 代理设置

这里不方便写, 见博客 C 代理设置.

D. 修改系统设置1 时间设置修改时区. 时区是从 /etc/localtime 读取的, 而默认这是个软链接, 链接到哪个时区文件就是哪个时区.# 查看时间, 发现时区是 UTC 的 date # 删除原有的链接 sudo rm /etc/localtime # 新建到上海时区的软链接 sudo ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime # 再次查看时区, 发现是 CST 即正确 date2 修改hostname# 1. 临时修改为abc, 修改后打开新终端显示, 重启系统失效 hostname abc # 2. 永久修改为abc: 修改 /etc/hostname 中的值为 abc # 重启系统3 开机启动程序

参考资料:

阮一峰: Systemd 入门教程: 命令篇 阮一峰: Systemd 入门教程: 实战篇3.1 原理简述

开机启动的服务分为两种, 系统服务和用户服务. 系统服务使用 root 权限启动, 用户服务使用用户权限启动. 在开机后登陆之前, 系统会扫描以下目录的服务并启动:

systemd/system 的服务 (略去 /run 开头的)/usr/lib/systemd/system/ (常用)/lib/systemd/system/ (软链接, 实际指向 /usr/lib/systemd/system/)/usr/local/lib/systemd/system/ (默认不存在该目录)/etc/systemd/system/ systemd/user 的服务 (略去 /run 开头的) /usr/lib/systemd/user/ (常用)/usr/local/lib/systemd/user/ (默认不存在该目录)/usr/share/systemd/user/ (默认不存在该目录)/usr/local/share/systemd/user/ (默认不存在该目录)~/.local/share/systemd/user/ (默认不存在该目录)/etc/systemd/user/ ~/.config/systemd/user/ (默认不存在该目录)

注意: 可以使用 systemctl show --property=UnitPath 命令查看扫描顺序, 优先级从低到高.

操作系统服务常用的命令如下:

# 启用系统服务 sudo systemctl enable xxx.service # 禁用系统服务 sudo systemctl disable xxx.service # 查看系统服务状态 sudo systemctl status xxx.service # 启动系统服务 sudo systemctl start xxx.service # 重启系统服务 sudo systemctl restart xxx.service # 停止系统服务 sudo systemctl stop xxx.service # 重新加载配置 sudo systemctl reload xxx.service # 启用用户服务 systemctl --user enable xxx.service # 其余命令类似: disable, status, start, stop

注意: 在操作用户服务时, 必须加 --user参数, 否则会找不到服务, 并且必须去掉 sudo, 否则会提示错误 Failed to connect to bus: No such file or directory.

3.2 自动运行: rc-local 服务修改服务文件 sudo vim /lib/systemd/system/rc-local.service, 添加最下面的一段话[Unit] Description=/etc/rc.local Compatibility Documentation=man:systemd-rc-local-generator(8) ConditionFileIsExecutable=/etc/rc.local After=syslog.target network.target remote-fs.target nss-lookup.target [Service] Type=forking ExecStart=/etc/rc.local start TimeoutSec=0 RemainAfterExit=no GuessMainPID=no #这一段原文件没有,需要自己添加 [Install] WantedBy=multi-user.target

这里的 WantedBy=multi-user.target 是把 rc-local.service 加入 multi-user.target 这一启动目标.

启用服务sudo systemctl enable rc-local.service

该命令实际上是根据我们新添加的依赖关系, 建立了 /etc/systemd/system/multi-user.target.wants/rc-local.service 符号链接指向 /lib/systemd/system/rc-local.service. 系统在启动时会扫描 multi-user.target.wants 目录并启动其中的服务.

添加我们需要的自启动命令到 /etc/rc.local 文件中 (与上面的配置中 ExecStart 的文件名对应), 该文件不存在时自己创建一个. 要注意这个文件里使用的命令都要写全路径(因为该文件是 root 执行的, 不写完整路径的话 root 用户的环境变量里可能没有该命令而运行失败)

#!/bin/bash # # rc.local # # 下面写入要启动的命令 为 rc.local 增加执行权限sudo chmod +x /etc/rc.local重启以测试是否成功.3.3 Type 参数

注意到 service 文件中有一个参数是 Type=forking, 该参数根据 ExecStart 对应的服务运行方式的不同有三个常用值 (参考):

服务启动后并保持运行, 没有返回到命令提示符, 则使用 simple 服务启动后返回到命令提示符, 同时服务运行在后台(即服务自我守护), 则使用forking: 服务启动后返回到命令提示符, 同时服务结束, 则使用oneshot 4 (双系统) 修改开机默认系统打开 grub 文件: sudo vim /etc/default/grub , 内容如下# If you change this file, run 'update-grub' afterwards to update # /boot/grub/grub.cfg. # For full documentation of the options in this file, see: # info -f grub -n 'Simple configuration' GRUB_DEFAULT=0 GRUB_TIMEOUT_STYLE=hidden GRUB_TIMEOUT=10 GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian` GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" GRUB_CMDLINE_LINUX="" ......

修改第6行, GRUB_DEFAULT=0 即为默认启动项, 0通常是 Ubuntu, 而 Windows 系统通常在下面, 需要在开机启动的时候数一下(从0开始数).

修改完毕后, 更新 grub: sudo update-grub 即可.5 登录启动项

需要区分以下概念:

开机启动项指的是针对于所有用户适用的启动程序.登录启动项指的是针对于特定用户适用的启动程序.

开机启动项的设置:

使用 3 开机启动程序 里的方式配置 system 级别的启动项

登录启动项的设置:

Server 版: 使用 3 开机启动程序 里的方式配置 user 级别的启动项Desktop 版: Launcher 中搜索 Startup Application , 并点击打开, 直接增加启动项即可.6 硬盘操作6.1 硬盘分区操作# 查看已挂载磁盘 df -h # 查看所有磁盘 (包括未挂载的磁盘) sudo fdisk -l # 查看某个磁盘 sudo fdisk -l /dev/sda # 对某个磁盘操作 sudo fdisk /dev/sda # 此时会进入操作模式, 按 m 显示所有可用命令 # 查看磁盘和分区之间的关系 sudo lsblk # 查看磁盘分区的 UUID 号 sudo blkid6.2 格式化硬盘

如果是刚分好区的硬盘, 则在需要先格式化分区, 否则既无法查看UUID, 也无法挂载到某一个目录下.

sudo mkfs.ext4 /dev/sda16.3 临时挂载系统重启之后,挂载将会失效sudo mkdir /data01 sudo mount /dev/sda1 /data016.4 永久挂载 先查看各个磁盘挂载的信息 sudo fdisk -l, 并确认目标硬盘的位置 /dev/sd* 查看该硬盘的UUID号 sudo blkid (使用UUID号可以避免硬盘更换位置后 /dev/sd* 发生变化, 而UUID不会变. UUID 是一个长度为 36 的十六进制数字, 注意不要看错.) 修改 /etc/fstab , 在最后增加以下内容, UUID替换为上一步查出来的, 第二个参数为挂载路径, 第三个参数为分区格式, 这个可以从第一步的命令中查看, 最后的三个参数的含义见这里.UUID=xxxxxxxxxxxxxxx /media/Win10OS ntfs defaults 0 0 UUID=xxxxxxx-xxxxxx-xxxxxx-xxxxxxx /data ext4 defaults 0 07 安装中文字体Ubuntu 单系统

直接安装 Microsoft 字体

sudo apt update sudo apt install ttf-mscorefonts-installer # 安装完成后更新字体缓存 sudo fc-cache -f -vWin10/Ubuntu 双系统:

可以直接让 Ubuntu 系统读取 Win10 系统的字体:

首先按照临时挂载的教程完成 Win10 硬盘的永久挂载(即开机自动挂载), 假设挂载的位置为 /media/Win10OS .然后创建 Win10 字体文件夹在 Ubuntu 系统的软链接, 注意对应挂载位置.ln -s /Windows/Fonts /usr/share/fonts/WindowsFonts # 例子 ln -s /media/Win10OS/Windows/Fonts /usr/share/fonts/WindowsFonts # 最后更新字体缓存 sudo fc-cache -f -vE. 常用软件和工具1 常用软件 (Desktop 版)Chrome搜狗拼音输入法网易云音乐, QQ音乐deepin-wine 用于安装 QQ 微信 等百度网盘WPS (Office 软件), 把语言修改为中文PDF阅读器福昕阅读器 (后面几个都不能很好的支持中文, 为避免折腾, 直接装福昕)OkularMaster PDF Editor 5 (安装正版, 百度网盘Crack)PDF Studio ViewerZotero (文献管理工具)Typora (Markdown 编辑器, 可实时渲染)PyCharmFilezilla (FTP 工具) (应用商店安装)VSCode (通过添加微软的源来安装, 见 H.5 不要从应用商店安装, Ubuntu20.04应用商店安装的无法输入中文)Flameshot (截图/贴图工具), 从 release 中下载gpick (屏幕取色软件), apt 安装Dropbox Cascadia-Code (微软提供的开源字体, 包含用于 Powerline 的字体和等宽字体)transmissionbt, qBittorrent (BT 下载工具)FSearch (Linux 下 Everything 的替代品)GitKraken (可视化 Git 工具)2 进阶软件 (终端操作)htop (系统资源监控), apt 安装Powerline 终端美化onedrive (Onedrive 的 第三方 Linux 客户端)Docker (安装和使用教程)Jellyfin (开源流媒体工具, 支持 Linux/Win10 部署, 全平台访问)NextCloud (开源云盘工具, 支持 Linux 部署, 全平台访问)3 有用的工具3.1 Homebrew

brew 是 MaxOS 上的一款包管理工具, 我们也可以在 Ubuntu 上安装它. 当我们使用没有 sudo 权限的服务器时, 用 brew 可以很方便的在用户目录下安装许多常用的 linux 工具或软件.

安装 brew, 默认的安装目录是 ~/.homebrew:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"

安装完毕后可以直接使用如下命令安装软件, 比如 privoxy:

brew install privoxy

在 ~/.bashrc中添加如下的变量以禁止 brew 每次检查更新.

export HOMEBREW_NO_AUTO_UPDATE=true 3.2 Node.js

Node.js 是 javascript 在本地执行的工具, 可以使用 nvm 来管理版本和安装.

curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.34.0/install.sh | bash source ~/.bashrc nvm install node # 安装软件包 npm install -g xxx # 换源安装 npm install -g xxx --registry=https://registry.npm.taobao.org # 永久换源 npm config set registry https://registry.npm.taobao.org3.3 Conda

Conda 是 Python 的环境管理工具. 从这里下载软件包 Miniconda3 后 (或者从这里下载 Anaconda3), 直接安装. 安装时注意填写安装路径.

# Miniconda, 小巧的 conda 工具, 默认环境几乎什么都没预装 sh Miniconda3-latest-Linux-x86_64.sh # Anaconda, 默认环境预装了许多科学计算包 sh Anaconda3-2022.10-Linux-x86_64.sh4 其他工具tldr

tldr 是个命令行工具, 用于常用命令的用法速查. 我们有时候看到的写法是 TL;DR, 它是 "Too Long; Don't Read" 缩写, 其含义就是字面意思, 很多工具的文档写的又臭又长, 对于新手并不实用, 因此 tldr 提供了这些命令最常用的用法和解释. 安装方式如下

sudo apt install tldr

使用方法:

tldr tar # ✔ Page not found. Updating cache... # ✔ Creating index... # # tar # # Archiving utility. # Often combined with a compression method, such as gzip or bzip2. # More information: https://www.gnu.org/software/tar. # # - [c]reate an archive from [f]iles: # tar cf target.tar file1 file2 file3 # # ...... # # - E[x]tract a (compressed) archive [f]ile into the current directory: # tar xf source.tar[.gz|.bz2|.xz] # # ...... # # - E[x]tract [f]iles matching a pattern: # tar xf source.tar --wildcards "*.html"bat

一种具有语法高亮和Git集成的cat命令. 参考知乎文章.

F. 有用的一些命令或脚本1 Google Drive 下载# 从Google Drive获取文件的唯一ID # 替换FILEID 为文件ID, 有两处 # 替换FILENAME为准备保存的文件名 wget --load-cookies /tmp/cookies.txt "https://docs.google.com/uc?export=download&confirm=$(wget --quiet --save-cookies /tmp/cookies.txt --keep-session-cookies --no-check-certificate 'https://docs.google.com/uc?export=download&id=FILEID' -O- | sed -rn 's/.*confirm=([0-9A-Za-z_]+).*/\1\n/p')&id=FILEID" -O FILENAME && rm -rf /tmp/cookies.txt2 代理链无法代理 nvm (bash 函数)# 解决方案 # 1. 创建一个文件 nvm2 vim nvm2 # 2. 写入一下两行内容, 第一行相当于定义 nvm 函数, 第二行执行. 这样 nvm 函数就变成了 nvm2 文件. # . /path/to/tools/nvm/nvm.sh # nvm $@ # 3. 代理运行 nvm install node proxychains4 nvm install node3. ssh 断开后自动重连使用 while 循环, 使 ssh 在断开后 10 分钟尝试自动重连while true; do ssh ; date; sleep 10m; doneG. 系统快捷键 (Desktop 版)按键功能Super打开任务视图Super, 然后输入任意字符系统搜索Super + L锁屏Super + D显示桌面Super + A显示应用程序菜单Super + Tab (Alt + Tab)在多个应用程序间切换Super + 箭头适配应用程序到屏幕Super + M打开/关闭通知栏Super + 空格切换输入法Alt + F2运行控制台Ctrl + Alt + T打开一个新的终端Ctrl + Alt + 箭头切换工作区H. 常见问题及解决方案 (Desktop 版)1 Flameshot 设置快捷键

在系统设置中, 进入键盘快捷键菜单, 点 + 自定义快捷键: Name: Flameshot_Screenshot_gui Command: flameshot gui * Short Cut: F1

然后在系统托盘选择 Flameshot, 设置贴图快捷键为 F3

2 deepin-wine 微信安装

Ubuntu 20.04 下通过我们在 E.1 给出的链接安装后无法通过图标打开. 可以通过安装旧版微信解决该问题.

中文字体 (参考deepin-wine 讨论区)

Deepin-WeChat 的中文字体默认用的是"文泉驿微米黑", 所以在系统里安装该字体即可. 首先从Github仓库 下载该字体, 然后复制到字体目录病刷新字体缓存:

sudo cp wqy-microhei.ttc /usr/share/fonts fc-cache -fv

重启微信.

无法直接粘贴截图

安装 libjpeg62:i386 可解决

sudo apt install libjpeg62:i3863 卸载自带的火狐浏览器# 查找相关软件包 dpkg --get-selections | grep firefox # 卸载 sudo apt purge firefox firefox-locale-en firefox-locale-zh-hans4. Zotero 添加启动图标

解压下载的 Zotero 压缩包, 通过下面的命令为 Zotero 添加启动图标

mv Zotero_linux-x86_64 zotero mv zotero ~/tools cd ~/tools/zotero ./set_launcher_icon sudo ln -s /home//tools/zotero/zotero.desktop /usr/share/applications/zotero.desktop

添加图标后稍等片刻即可从 Launcher 中搜索.

5. VSCode安装

Ubuntu 20.04 下应用商店里安装的 VSCode 无法输入中文. 此处我们添加微软的apt源来安装(参考):

wget -q https://packages.microsoft.com/keys/microsoft.asc -O- | sudo apt-key add - sudo add-apt-repository "deb [arch=amd64] https://packages.microsoft.com/repos/vscode stable main" sudo apt update && sudo apt install code6. 英文语言下中文目录的排序在系统语言设置为英文时, 中文目录的排序不是按拼音排的. 这时候我们需要修改 locale 中 LC_COLLATE 的值. 首先显示使用 locale 命令查看当前的语言配置(系统语言为英文, 区域设置为中国):LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_CTYPE="en_US.UTF-8" LC_NUMERIC=zh_CN.UTF-8 LC_TIME=zh_CN.UTF-8 LC_COLLATE="en_US.UTF-8" LC_MONETARY=zh_CN.UTF-8 LC_MESSAGES="en_US.UTF-8" LC_PAPER=zh_CN.UTF-8 LC_NAME=zh_CN.UTF-8 LC_ADDRESS=zh_CN.UTF-8 LC_TELEPHONE=zh_CN.UTF-8 LC_MEASUREMENT=zh_CN.UTF-8 LC_IDENTIFICATION=zh_CN.UTF-8 LC_ALL=

我们需要修改其中的 LC_COLLATE="en_US.UTF-8".

sudo vim /etc/environment

在末尾添加 LC_COLLATE=zh_CN.UTF-8, 重启系统即可.



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有